(function() {
	
	if (!window.CJ) {
		window.CJ = {};
	}
	

	function Qmenu () {
		this.name = 'Qmenu';
		this.rootID = "#vod";
		this.rootElem = $(this.rootID+" .menu ul");
		this.bindEvent();
	}
	Qmenu.prototype = new EventCtl();
	Qmenu.prototype.bindEvent = function () {
		var self = this;
		$(this.rootElem).on('click', "li", function(evt){
			var elem = $(this);
			$("#vod h3 strong").removeClass('select focus');
			elem.siblings('li.on').removeClass('on focus');
			elem.addClass('on focus');
			//해당 레이어 보여줌
			$(self.rootID).removeClass().addClass(elem.data('ctl'));
			//if (self.name != 'Qmenu') {
				//Qmenu delegate
				CJ.Scene.setDelegate(CJ.Scene["Qmenu"]);
			//}
		});
		//Qmenu Mouseover
		$(this.rootElem).on('mouseenter', "li", function(evt){
			var elem = $(this);
			//하위 모든 포커스 제거
			$("#vod h3 strong").removeClass('select focus');
			$(self.rootID + ' .btn').removeClass('focus');
			$(self.rootID + ' li.focus').removeClass('focus');
			
			//Qmenu 포커스
			elem.siblings('li.on').removeClass('on focus');
			elem.addClass('on focus');
			elem.parents('.menu').removeClass('m1 m2 m3 m4').addClass(elem.data('cls'));
			//Qmenu delegate
			CJ.Scene.setDelegate(CJ.Scene["Qmenu"]);
		});
		
		//like Btn
		$("#vod h3 strong").on('mouseenter', function(evt){
			//하위 모든 포커스 제거
			$(self.rootID + ' .btn').removeClass('focus');
			$(self.rootID + ' li.focus').removeClass('focus');
			//like Btn 포커스
			$(this).addClass("focus");
			//Qmenu delegate
			CJ.Scene.setDelegate(CJ.Scene["Qmenu"]);
		});
		
		$("#vod h3 strong").on('click', function(){
			//하위 모든 포커스 제거
			$(self.rootID + ' .btn').removeClass('focus');
			$(self.rootID + ' li.focus').removeClass('focus');
			
			$(this).addClass("select");
			$("#vod h3 .ani").addClass("ani_like");
			setTimeout(function (){
				$("#vod h3 .ani").removeClass("ani_like");
			}, 1000);
			//Qmenu delegate
			CJ.Scene.setDelegate(CJ.Scene["Qmenu"]);
			
			CJ.Video.like(function(){
				var elem = $("#vod .num");
				var cnt = parseInt(elem.text()) + 1;
				elem.text(cnt);
			});
		});
	};
	Qmenu.prototype.down = function () {
		$("#vod .menu").removeClass("hover m1 m2 m3 m4");
		var ctl = $('li.focus', this.rootElem).data("ctl");//.removeClass('focus')
		if (!!ctl) {
			$('#vod').removeClass().addClass(ctl);
			if (ctl != 'chart') $('li.focus', this.rootElem).removeClass('focus');
		}
		if( ctl == 'list') {//VOD Sub
			CJ.Scene.sub();
		} else if (ctl == 'chart') {//like chart

		} else if (ctl == 'info') {//부가서비스
			CJ.Scene.content();
		} else if (ctl == 'control') {//비디오 컨트롤
			CJ.Scene.vod();
		} else { //like
			$("#vod h3 strong").removeClass('select focus');
			$('li.on', this.rootElem).addClass('focus');
		}
	};
	Qmenu.prototype.up = function () {
		$("#vod .menu").removeClass("hover m1 m2 m3 m4");
		$('li.focus', this.rootElem).removeClass('focus');
		$("#vod h3 strong").addClass('focus');
	};
	Qmenu.prototype.left = function () {
		if ($("#vod h3 strong").hasClass('focus') == false) {
			this.moveH('prev');
		}
	};
	Qmenu.prototype.right = function () {
		if ($("#vod h3 strong").hasClass('focus') == false) {
			this.moveH('next');
		}
	};
	Qmenu.prototype.moveH = function (func) {
		var idx, now = $('li.on', this.rootElem),
			next = now[func]();
		if (next.length>0) {
			now.removeClass('on focus');
			next.addClass('on focus');
			idx =next.index();
			$(this.rootID+" .menu").removeClass("m1 m2 m3 m4").addClass('hover m'+parseInt(idx+1));
		}
		this.enter();
	};
	Qmenu.prototype.back = function () {
		$("#vod h3 strong").removeClass('select focus');
		$("li.focus", this.rootElem).removeClass('focus');
		CJ.plugin.Player.channeling();
		CJ.Scene.episode();
	};
	Qmenu.prototype.enter = function () {
		var now = $('li.focus', this.rootElem);
		var ctl = now.data("ctl");
		if (!!ctl) {
			$(this.rootID).removeClass().addClass(ctl);
			$('#vod .box li').removeClass('focus');
		} else { //like 클릭
			$("#vod h3 strong").addClass("select");
			$("#vod h3 .ani").addClass("ani_like");
			setTimeout(function (){
				$("#vod h3 .ani").removeClass("ani_like");
			}, 1000);
			CJ.Video.like(function(){
				var elem = $("#vod .num");
				var cnt = parseInt(elem.text()) + 1;
				elem.text(cnt);
			});
		}
	};
	Qmenu.prototype.removeFocus = function () {
		$("#vod h3 strong").removeClass('select focus');
		$("li.focus", this.rootElem).removeClass('focus');
	};
	CJ.Qmenu = Qmenu;

	
	$.extend(CJ.Scene, {
							qmenu: function(){
								var now = $('li.on', this["Qmenu"].rootElem);
								var idx = now.addClass('focus').index();
								var ctl = now.data('ctl');
								$(this["Qmenu"].rootID+" .menu").removeClass("m1 m2 m3 m4").addClass('hover m'+parseInt(idx+1)+'');
								$('#vod').removeClass().addClass(ctl);
								this.setDelegate(this["Qmenu"]);
							}
						});


	$(document).ready(function(){

		CJ.Scene["Qmenu"] = new CJ.Qmenu();

	});
})();